Data managing device, data managing program embodied on a computer readable medium and data managing method for managing data stored in apparatus to be controlled

ABSTRACT

A PC includes: a data acquiring portion to acquire from an MFP connected to a network at least part of the data stored therein as editing data; a data editing portion to edit the editing data; a detecting portion to detect edited part different between a pre-editing version of the editing data and an edited version of the editing data; a selecting portion to select either a rewrite-all mode or an individual rewrite mode, based on the number of records included in the edited part; if the rewrite-all mode is selected, a batch rewriting portion to send a rewrite-all command to the MFP to rewrite the pre-editing version of the editing data with the edited version thereof, and if the individual rewrite mode is selected, an individual rewriting portion to send at least one individual rewrite command to the MFP to rewrite all records of the edited part one by one.

This application is based on Japanese Patent Application No. 2006-195740filed with Japan Patent Office on Jul. 18, 2006, the entire content ofwhich is hereby incorporated by reference

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to a data managing device, datamanaging program embodied on a computer readable medium and datamanaging method, and more particularly to a data managing device, datamanaging program embodied on a computer readable medium and datamanaging method for managing data stored in a particular device to becontrolled.

2. Description of the Related Art

Remote control of composite machines (referred to as MFPs (MultiFunction Peripherals) hereinafter), which combine printing, scanning,and facsimile functions, is now possible as these machine connected tocomputers. MFPs are capable of storing various types of data, such asuser data for managing users to restrict users who operate the MFP,destination data listing destinations of facsimile and e-mails, and thelike. Users may enter/edit such data using the control panel of the MFP.In addition, users can import the data stored in the MFP to a computer,edit it, and then rewrites the data in the MFP with the edited data byremotely controlling the MFP from the computer.

Briefly, there are two methods for editing data stored in the MFP usingcomputers. In a first method, the computer combines modified andunmodified data and sends it as a bundle of data to the MFP which, inturn, rewrites the existing data that is already stored therein with thereceived bundle of data. The sending/receiving procedure may only beexecuted once at the sending side and the receiving side, respectively,in the first method, because the data is sent/received in a bundle. Inthis case, the MFP executes the same procedure regardless of whether theamount of data to be sent is changed, and no significant difference hasbeen found in time for the MFP to process two bundles of data havingdifferent data amount. A suitable communication protocol for the firstmethod is an FTP (File Transfer Protocol), for example.

In a second method, the computer sends a command to modify each recordof the edited part of the data that is changed from the pre-editingversion of the data, and the MFP updates the existing data storedtherein each record after another in response to the received command.Thus, the MFP only rewrites the records of the edited part of the data,which differs from the pre-editing version of the data, in the secondmethod, so that the rewriting time of each rewriting job is shorter thanthat of the first method. However, if the number of records of thechanged part is increased, the accompanying rewriting time will belonger and the total time to rewrite all records of the changed part maybe longer than the first method. A SORP (Simple Object Access Protocol),for example, is a suitable communication protocol for the second method.

In editing the data stored in the MFP, the user must choose a program toupdate the data in accordance with either the first or second method andorder the computer to execute the program. It has been difficult,however, for the user to determine prior to editing which program mightdeserve choosing.

It is noted that Japanese Patent Laid-Open Publication No. H6-35513discloses the technique to divide data before sending it when a largeamount of data should be sent, while sending all data when a smallamount of data should be sent.

SUMMARY OF THE INVENTION

The present invention has been made to solve the problem set forthabove, and one object of the present invention is to provide a datamanaging device capable of rewriting data stored in a particular deviceto be controlled in a short time.

Another object of the present invention is to provide a data managingprogram embodied on a computer readable medium, capable of rewritingdata stored in a particular device to be controlled in a short time.

A still another object of the present invention is to provide a datamanaging method capable of rewriting data stored in a particular deviceto be controlled in a short time.

To achieve the above objects, according to one aspect of the presentinvention, a data managing device includes: a data acquiring portion toacquire from an image processing apparatus at least part of data storedtherein as editing data; a data editing portion to edit the acquiredediting data; a detecting portion to detect an edited part which isdifferent between a pre-editing version of the editing data and anedited version of the editing data; a selecting portion to select eithera rewrite-all mode or an individual rewrite mode based on the number ofrecords included in the detected edited part; if the rewrite-all mode isselected, a batch rewriting portion to send a rewrite-all command to theimage processing apparatus to order the image processing apparatus torewrite the pre-editing version of the editing data with the editedversion of the editing data; and if the individual rewrite mode isselected, an individual rewriting portion to send at least oneindividual rewrite command to the image processing apparatus to orderthe image processing apparatus to rewrite all records included in theedited part one by one.

In this aspect, when the image processing apparatus rewrites the editingdata in response to the rewrite-all command, the rewriting time torewrite the data is substantially the same regardless of the data amountof the editing data. On the other hand, when the image processingapparatus rewrites the editing data in response to the individualrewrite command, it rewrites the records of the edited part of theediting data, which is changed from the pre-editing version of theediting data, one record after another, so that the rewriting time willbe longer as more records are included in the edited part. Since therewrite mode is chosen between the rewrite-all mode and the individualrewrite mode based on the number of records of the edited part of thedata, a data managing device capable of rewriting the data stored in theimage processing apparatus in a short time can be provided.

According to another aspect of the present invention, a data managingprogram embodied on a computer readable medium for causing a computer toexecute processing. The processing includes the steps of: acquiring froman image processing apparatus at least part of data stored therein asediting data; editing the acquired editing data; detecting an editedpart which is different between a pre-editing version of the editingdata and an edited version of the editing data; selecting either arewrite-all mode or an individual rewrite mode based on the number ofrecords included in the detected edited part; if the rewrite-all mode isselected, sending a rewrite-all command to the image processingapparatus to order the image processing apparatus to rewrite pre-editingversion of the editing data with the edited version of the editing data;and if the individual rewrite mode is selected, sending at least oneindividual rewrite command to the image processing apparatus to orderthe image processing apparatus to individually rewrite all recordsincluded in the edited part one by one.

In this aspect, a data managing program embodied on a computer readablemedium capable of rewriting the data stored in the image processingapparatus in a short time can be provided.

According to a further aspect of the present invention, a data managingmethod executed by a computer connected to an image processing apparatusvia a network, to manage data stored in the image processing apparatus,includes the steps of: acquiring from the image processing apparatus atleast part of the data stored therein as editing data; editing theacquired editing data; detecting an edited part which is differentbetween a pre-editing version of the editing data and an edited versionof the editing data; selecting either a rewrite-all mode or anindividual rewrite mode based on the number of records included in thedetected edited part; when the rewrite-all mode is selected, sending arewrite-all command to the image processing apparatus, so as to instructthe image processing apparatus to rewrite the pre-editing version of theediting data with the edited version of the editing data; and when theindividual rewriting mode is selected, sending at least an individualrewrite command to the image processing apparatus, so as to instruct theimage processing apparatus to rewrite all records included in the editedpart one by one.

In this aspect, a data managing method capable of rewriting the datastored in the image processing apparatus in a short time can beprovided.

The foregoing and other objects, features, aspects and advantages of thepresent invention will become more apparent from the following detaileddescription of the present invention when taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an overall schematic view of a printing system according to anembodiment of the present invention;

FIG. 2 is a block diagram illustrating an example of a hardwarestructure of a PC according to the embodiment of the present invention;

FIG. 3 is a functional block diagram illustrating an overall function ofan MFP;

FIG. 4 is a functional block diagram illustrating an overall function ofa CPU of the PC;

FIG. 5 illustrates an example of standard data;

FIG. 6 illustrates an example of standard data for respective operationmode corresponding to MFP 200;

FIG. 7 illustrates an exemplary data editing procedure;

FIG. 8 is a first flow chart illustrating an exemplary standard dataacquiring procedure;

FIG. 9 is a second flow chart illustrating an exemplary standard dataacquiring procedure;

FIG. 10 is a third flow chart illustrating an exemplary standard dataacquiring procedure; and

FIG. 11 is a flow chart illustrating an exemplary procedure ofgenerating/sending an individual rewrite command.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention will be described below with reference to theaccompanying drawings. In the drawings, like numerals indicate similarelements which are designated the same way and perform the samefunction, and the detailed description thereof will not be repeated.

Referring to FIG. 1, there is shown an overall view of a printing systemaccording to an embodiment of the present invention. As shown in FIG. 1,a printing system 1 includes a personal computer (hereinafter referredto as a “PC”) 100 and MFPs (Multi Function Peripherals) 200 and 201,each of which is connected to a network 2.

The network 2 may be implemented as a local area network (LAN) in awired or wireless configuration. Alternatively, the network 2 may beimplemented by other types of network, such as a wide area network(WAN), the Public Switched Telephone Network (PSTN), and the like.

PC 100 is a general computer in which a driver program for controllingMFPs 200 and 201 is installed. If MFPs 200 and 201 are of differenttype, two kinds of driver programs for controlling MFPs 200 and 201,respectively, are installed in PC 100. PC 100 functions as a datamanaging device for managing data stored in MFPs 200 and 201.

FIG. 2 is a block diagram of an exemplary hardware structure of PC 100according to the embodiment of the present invention. As shown in FIG.2, PC 100 includes a central processing unit (CPU) 101, a read onlymemory (ROM) 103 which stores programs or the like to be executed by CPU101, a random access memory (RAM) 105 which loads a program forexecution and stores data while the program is executed, a hard discdrive (HDD) 107 which stores data in a nonvolatile manner, a cardinterface (I/F) 109 which attached a flash memory 108, a communicationI/F 111 which connects CPU 101 to the network 2, and an operatingportion 119 which serves as an interface with the user.

CPU 101 loads and executes the printer driver program stored in flashmemory 108 that is inserted in the card I/F 109. In addition to thedriver program recorded in the flash memory 108, CPU 101 may execute theprogram stored in HDD 107 by loading it into RAM 105. In this case,another computer connected to the network 2 may rewrite the driverprogram stored in HDD 107 of PC 100, or additionally writes a new driverprogram thereto. Further, PC 100 may download a driver program fromanother computer connected to the network 2 and stores it in HDD 107.The term “program” herein includes not only a program executabledirectly by CPU 101, but also other programs such as source-typeprograms, compressed programs and encrypted programs.

Operating portion 119 includes an input portion 119A and a displayportion 119B. Input portion 119A is implemented by an input device, suchas a keyboard, a mouse, and the like, for receiving inputs manipulatedby the user. Display portion 119B is implemented by a display device,such as a liquid crystal display, an organic electroluminescence display(EL) panel, a cathode-ray tube (CRT), and the like. Input portion 119Amay include a pointing device, such as a touch panel.

Communication I/F 111 is a communication interface which connects PC 100with the network 2, to thereby enable PC 100 to establish communicationwith other MFPs 200 and 201. Instead of the network 2, PC 100 may beconnected directly with other MFPs 200 and 201 via a serial or parallelinterface. Any suitable interface applicable to the connectingconfiguration of PC 100 and other MFPs 200 and 201, respectively, may beused as communication I/F 111.

Each MFP 200, 201 functions as a scanner for reading documents, an imageforming apparatus for forming an image on a recording medium, such aspaper, according to the image data, and a facsimile machine. Thus, eachMFP 200, 201 has multiple functions including image reading, copying,and transmitting/receiving facsimile. It is noted that in the presentembodiment, MFPs 200 and 201 are described as image processingapparatus, but any device having an image processing function may beused instead of MFPs 200 and 201, such as a scanner, a printer, acopier, facsimile machine, computers, or the like. It is also noted thatMFPs 200 and 201 have the same function and only MFP 200 will beillustrated in the description below until otherwise noted.

FIG. 3 is a functional block diagram illustrating an overall function ofthe MFP. As shown in FIG. 3, MFP 200 includes a main circuit 210, adocument reader 230 for reading documents, an automatic document feeder220 for transporting documents to document reader 230, an image formingportion 240 for forming an image on, e.g., a sheet of paper according tothe image data supplied from image reader 230 by reading the document, apaper supply 250 for supplying sheets of paper to image forming portion240, and a control panel 260 which serves as a user interface. Maincircuit 210 includes a CPU 211, a communication interface (I/F) 212, aROM 213, a RAM 214, an electronically erasable and programmable ROM(EEPROM) 215, a hard disc drive (HDD) 216 which is a large capacitymemory, a facsimile portion 217, and an external memory 218 to which acompact disc ROM (CD-ROM) 218A is mounted. CPU 211 is connected toautomatic document feeder 220, document reader 230, image formingportion 240, paper supply 250, and control panel 260, in order tocontrol the entire MFP 200.

ROM 213 stores a program to be executed by CPU 211, or necessary datafor executing the program. RAM 214 is used as a working area when CPU211 executes the program. In addition, RAM 214 temporarily stores theretrieved data (image data) which is sequentially sent from documentreader 230.

Control panel 260 includes a display portion 260A and an operatingportion 260B. Display portion 260A is implemented by a display devicesuch as a liquid crystal display (LCD) and an organicelectroluminescence display (EL), and displays a menu of instructions orthe information of acquired image data toward users. Operating portion260B includes a plurality of keys for entering data including variousinstructions, letters and numerals by manipulating individual keys bythe user. Operating portion 260B also includes a touch panel provided ondisplay portion 260A.

Communication I/F portion 212 serves as an interface which connects MFP200 with the network 2. CPU 211 establishes communication with PC 100via communication I/F portion 212 to transmit/receive data.

HDD 216 stores user management data which is used as an approval list torestrict users who operate the PC, and destination data which is a listof destinations including facsimile destinations and/or e-mailaddresses. The user management data includes user identificationinformation, and authentication information, such as passwords. Thedestination data includes user identification information, fax numbers,and e-mail addresses.

Facsimile portion 217 is connected to PSTN and transmits and/or receivesfacsimile data to and from PSTN. Facsimile portion 217 stores thereceived facsimile data in HDD 216, or supplies it to image formingportion 240. In response, image forming portion 240 prints the facsimiledata received from facsimile portion 217 on a recording sheet.Alternatively, facsimile portion 217 may convert the data stored in HDD216 into facsimile data and transmits it to a fax machine connected toPSTN.

CD-ROM 218A is mounted on external memory 218. CPU 211 is accessible toCD-ROM 218A through external memory 218. CPU 211 herein executes theprogram stored in ROM 213, but the program stored in CD-ROM 218A may beloaded to RAM 214 and executed.

In printing system 1 of the present embodiment, when the driver programis executed by PC 100, it starts controlling MFP 200. PC 100 edits theuser management data or the destination data, which both are stored inHDD 216 of MFP 200, and rewrites both data with the edited version ofthese data. Editing includes modifying, adding, and deleting data.

CPU 211 of MFP 200 executes programs which send/receive data inaccordance with FTP, or programs which send/receive data in accordancewith SOAP. If the destination data is received from PC 100 in accordancewith FTP, CPU 211 stores it in HDD 216. If a command to rewrite onerecord of the destination data is received from PC 100 in accordancewith SOAP, CPU 211 rewrites the one record of the destination data. Therewriting job includes modification, addition, and deletion of therecords. MFP 200 may rewrite the destination data, when it received inaccordance with FTP, in about 60 seconds, which might not be changedsignificantly even if the number of records of the destination data ischanged. On the other hand, MFP 200 may execute a command received inaccordance with SOAP in about 0.2-0.5 seconds, which varies depending onwhether the received command is a modify, add, or delete command.Therefore, as the number of commands received in accordance with SOAP isincreased, the accompanying rewriting time will be longer. For example,let the command to add a record be executed in 0.5 seconds, executing areceived command to add 120 records will take as long as 60 seconds, asflatly calculated.

An exemplary rewriting procedure which is executed by PC 100 and MFP 200to rewrite the destination data stored in HDD 216 of MFP 200 will bedescribed below.

FIG. 4 is a functional block diagram illustrating an overall function ofCPU 101 of PC 100, wherein the functions available when CPU 101 executesa driver program are shown. CPU 101 includes: an editing data acquiringportion 10 which acquires at least part of the destination data storedin HDD 216 as editing data from MFP 200; a data editing portion whichedits the editing data; a comparing portion 30 which compares thepre-editing version of the editing data against the edited versionthereof to detect the edited part which differs from the pre-editingversion of the editing data; a selecting portion 40 which estimates timefor MFP 200 to update all data of the edited part based on the number ofrecords included in the edited part and standard data, and selectseither a rewrite-all mode or an individual rewrite mode based on theestimated updating time; a standard data acquiring portion 50 whichacquires standard data; in the rewrite-all mode, a batch rewritingportion 60 which rewrites the destination data stored in HDD 216 of MFP200 with the edited version of the editing data; and in the individualrewrite mode, an individual rewriting portion 70 which rewrites therecords of the edited part of the destination data stored in HDD 216 ofMFP 20 one by one.

Editing data acquiring portion 10 requests MFP 200 to send all or partof the destination data stored in HDD 216. When MFP 200 receives therequest, it reads all or part of the destination data from HDD 216 andreturns it to PC 100. When editing data acquiring portion 10 receivesfrom MFP 200 all or part of the destination data that has previouslybeen requested for sending, editing data acquiring portion 10 outputsthe received data to both comparing portion 30 and data editing portion20 as editing data. Comparing portion 30 temporarily stores the editingdata in RAM 105.

Data editing portion 20 displays the editing data supplied from editingdata acquiring portion 10 on display portion 119B, so as to receiveediting instructions entered by a user via input portion 119A. Editinginstructions include a modify instruction to modify the editing data, anadd instruction to add a new record(s) to the editing data, and a deleteinstruction to delete all or part of the records from the editing data.Data editing portion 20 edits the editing data in response to thereceived instruction, and supplies the edited version of the editingdata to comparing portion 30 and batch rewriting portion 60.

Batch rewriting portion 60 is enabled in the rewrite-all mode to sendthe edited version of the editing data together with the rewrite-allcommand to MFP 200, so as to let it rewrite the editing data of thedestination data, stored in HDD 216 of MFP 200, with the edited versionof the editing data supplied from data editing portion 20. When therewrite-all command is received, MFP 200 rewrites the editing data ofthe destination data stored in HDD 216, with the edited version of theediting data received with the rewrite-all command. Rewriting data bysending the rewrite-all command is herein effected by sending the datain accordance with FTP.

Comparing portion 30 compares the edited version of the editing datasupplied from data editing portion 20 against the pre-editing version ofthe editing data stored in RAM 105, to detect the edited part which isdifferent between the pre-editing version of the editing data and theedited version of the editing data, and supplies it to individualrewriting portion 70 and selecting portion 40. The edited part includesmodified part, additional part and deleted part. Comparing portion 30includes a modified part detecting portion 31, an additional partdetecting portion 32, and a deleted part detecting portion 33. Modifiedpart detecting portion 31 compares the edited version of the editingdata with pre-editing version of the editing data to detect the modifiedpart which is different between the pre-editing version of the editingdata and the edited version of the editing data, and supplies thedetected modified part to individual rewriting portion 70 and selectingportion 40. Additional part detecting portion 32 compares the editedversion of the editing data with the pre-editing version of the editingdata to detect the additional part which is different between thepre-editing version of the editing data and the edited version of theediting data, and supplies the detected additional part to individualrewriting portion 70 and selecting portion 40. Deleted part detectingportion 33 compares the edited version of the editing data with thepre-editing version of the editing data to detect the deleted part whichis different between the pre-editing version of the editing data and theedited version of the editing data, and supplies the detected deletedpart to individual rewriting portion 70 and selecting portion 40.

Individual rewriting portion 70 is enabled in the individual rewritemode to send at least one individual rewrite command to MFP 200, so asto rewrite all records one by one included in the edited part of thedata supplied from comparing portion 30. If the edited part includesmore than one record, individual rewiring portion 70 sends a multiplenumber of individual rewrite commands, each corresponding to eachrecord, to MFP 200. In this case, rewriting one record in response tothe individual rewrite command is effected by sending the data inaccordance with SOAP. When MFP 200 receives the individual rewritecommand, it rewrites the corresponding data stored in HDD 216 inresponse to the received individual rewrite command.

Specifically, individual rewriting portion 70 includes a modified partrewriting portion 71, an additional part rewriting portion 72, and adeleted part rewriting portion 73. Modified part rewriting portion 71 isinput the modified part from modified part detecting portion 31 andsends at least one individual modify command to MFP 200, so as torewrite all records included in the modified part one by one. When MFP200 receives the individual modify command, it modifies thecorresponding record of the destination data stored in HDD 216 inresponse to the received individual modify command. Additional partrewriting portion 72 is input the additional part from added partdetecting portion 32 and sends at least one individual add command toMFP 200, so as to rewrite all records included in the additional partone by one. When MFP 200 receives the individual add command, it addsand stores the record included in the individual add command in thedestination data stored in HDD 216. Deleted part rewriting portion 73 isinput the deleted part from deleted part detecting portion 33 and sendsat least one individual delete command to MFP 200, so as to rewrite allrecords included in the deleted part one by one. When MFP 200 receivesthe individual delete command, it deletes the record identified by theindividual delete command from the destination data stored in HDD 216.

Standard data acquiring portion 50 acquires standard data and suppliesit to selecting portion 40. The standard data includes a unit time torewrite, which indicates time for MFP 200 to rewrite one record of thedestination data stored in HDD 216 in response to the individual rewritecommand, and a batch rewriting time which indicates time for MFP 200 torewrite the destination data stored in HDD 216 in response to therewrite-all command. The unit time to rewrite includes a unit time tomodify, a unit time to add, and a unit time to delete. PC 100 previouslystores the unit time to rewrite and the batch rewriting time of MFP 200in HDD 107, so that standard data acquiring portion 50 is able to readthe unit time to rewrite and the batch rewriting time from HDD 107. Ifthe machine type of MFPs 200 and 201 is different from each other, PC100 stores the unit time to rewrite and the batch rewriting time inadvance corresponding to MFPs 200 and 201, respectively, in HDD 107,allowing standard data acquiring portion 50 to read the unit time torewrite and the batch rewriting time from HDD 107 corresponding to theMFP that sent the editing data.

FIG. 5 illustrates an example of standard data. The standard data shownin FIG. 5 includes a unit time to rewrite and a batch rewriting time foreach machine type. MFPs 200 and 201 are herein indicated as “Type A MFP”and “Type B MFP”, respectively, in order to illustrate the standard dataof MFPs 200 and 201 when their machine type is different from eachother. The standard data defines the unit time to rewrite (i.e., theunit time to modify, the unit time to add, and the unit time to delete)and the batch rewriting time, corresponding to MFPs 200 and 201,respectively.

Instead of storing the standard data in HDD 107 of PC 100, MFP 200 maystore the standard data in its HDD 216. In this case, standard dataacquiring portion 50 acquires the standard data of MFP 200 by sending arequest to send the standard data to MFP 200, and receives the standarddata from MFP 200.

In addition, if the unit time to rewrite and the batch rewriting time ofMFP 200 are different depending on the operation mode, the standard datafor each operation mode may be stored in either HDD 107 or HDD 216 ofMFP 200. In this case, the standard data acquiring portion 50 sends aninquiry to MFP 200 about the current operation mode thereof and will benotified of the operation mode from MFP 200. Then, standard dataacquiring portion 50 reads the unit time to rewrite and the batchrewriting time corresponding to the notified operation mode from HDD107, and supplies them to selecting portion 40. When MFP 200 stores thestandard data in HDD 216, standard data acquiring portion 50 requestsMFP 200 to send the standard data, and MFP 200 reads the standard datastored in HDD 216 corresponding to the current operation mode andreturns the acquired data to PC 100. Standard data acquiring portion 50supplies the unit time to rewrite and the batch rewriting time includedin the received standard data to selecting portion 40.

FIG. 6 illustrates another example of standard data for each operationmode of MFP 200. The standard data as shown in FIG. 6 will be providedwhen MFP 200 has three types of operation mode including a stand-by modewhich is an operation mode capable of directly starting the imageforming operation, a printing mode in which the image forming operationis underway, and a sleep mode which is an operation mode requiring lesspower consumption. The standard data defines the unit time to rewriteand the batch rewriting time for each operation mode, i.e., for thestand-by mode, printing mode, and sleep mode, respectively

Alternatively, the standard data may not be stored in PC 100, nor in MFP200. Instead, the standard data may be generated by sending theindividual rewrite command and the rewrite-all command directly to MFP200, and measuring time to rewrite the data stored in HDD 216 of MFP 200using test data.

Referring back to FIG. 4, selecting portion 40 calculates the individualrewriting time to rewrite the data stored in HDD 216 of MFP 200individually with the edited part of the data supplied from comparingportion 30. Specifically, selecting portion 40 calculates the individualrewriting time by multiplying the number of records included in theedited part supplied from comparing portion 30 by the unit time torewrite for MFP 200 to rewrite one record in response to the individualrewrite command. Then, selecting portion 40 compares the individualrewriting time with the batch rewriting time, and selects either therewire-all mode or the individual rewrite mode in accordance with thecomparison result. Selecting portion 40 selects the individual rewritemode if the individual rewriting time is shorter than the batchrewriting time, and vice versa. The individual rewriting time is a sumof the time for modifying, adding, and deleting the data. Selectingportion 40 enables the batch rewriting portion 60 if the batch rewritingmode is selected, while the individual rewrite mode is enabled if theindividual rewrite mode is selected.

Specifically, selecting portion 40 includes a modifying time estimatingportion 41, an adding time estimating portion 42, and a deleting timeestimating portion 43. Modifying time estimating portion 41 estimatesthe modifying time by multiplying the number of records included in themodified part supplied from modified part detecting portion 31 by theunit time to modify for MFP 200 to modify one record in response to theindividual modify command. Adding time estimating portion 42 estimatesthe adding time by multiplying the number of records included in theadded part supplied from added part detecting portion 32 by the unittime to add for MFP 200 to add one record in response to the individualadd. Deleting time estimating portion 43 estimates the deleting time bymultiplying the number of records included in the deleted part suppliedfrom deleted part detecting portion 33 by the unit time to delete forMFP 200 to delete one record in response to the individual deletecommand.

Referring to FIG. 7, there is shown a flow chart illustrating anexemplary data editing procedure. The data editing procedure is aprocess executed by CPU 101 of PC 100 by running a data managingprogram, which is provided as part of the driver program, in CPU 101. Asshown in FIG. 7, CPU 101 previously acquires editing data in response toan instruction from the user (step S01). Specifically, CPU 101 requestsMFP 200 to send all or part of the destination data designated by theuser via input portion 119A. When all or part of the destination datasent from MFP 200 is received at communication I/F 111, the datareceived at communication I/F 111 is acquired as editing data. Then, theediting procedure begins (step S02). The editing procedure involvesdisplaying the editing data on display portion 119B, receiving theediting instruction entered by the user via input portion 119A, andgenerating the edited version of the editing data. In the next step S03,it is determined whether or not the editing is completed. If the editinghas been completed, the process proceeds to step S04, otherwise theprocess returns to step S02 to continue editing. When the user entersthe instruction to finish editing into input portion 119A, the finishinstruction to terminate the editing is received.

In step S04, it is determined whether or not the editing data has beenchanged by comparing the pre-editing version against the edited versionof the editing data. If the editing data has been changed, the processproceeds to step S05. On the other hand, the process ends if the editingdata has not been changed, in that the editing procedure is supposed torewrite the pre-editing data with the post-editing data when the datastored in HDD 216 of MFP 200 is changed.

In step S05, the standard data is acquired and the process proceeds tostep S06. The step of acquiring the standard data, as will be describedlater, is to acquire the unit time to modify, add, and delete the data,as well as time to rewrite all data. In step S06, the pre-editingversion of the editing data is compared against the edited versionthereof, so as to detect, in the edited version of the editing data, themodified part that differs from the pre-editing version of the editingdata. Next, in step S07, according to an equation (1) below, a modifyingtime to rewrite all records of included in the modified part iscalculated based on the number of records included in the modified partand the unit time to modify. In step S08, the pre-editing version of theediting data is compared against the edited version thereof, so as todetect, in the edited version of the editing data, the additional partadded to the pre-editing version of the editing data. In the next stepS09, an additional time to rewrite all records included in theadditional part is calculated based on the number of records included inthe additional part and the unit time to add, according to an equation(2) below. In step S10, the pre-editing version of the editing data iscompared against the edited version thereof, so as to detect the deletedpart removed from the pre-editing version of the editing data. In thenext step S11, a deleting time to rewrite all records included in thedeleted part is calculated, according to an equation (3) below. In thenext step S12, an individual rewriting time is calculated, according toan equation (4) below, by adding the modifying time, the additionaltime, and the deleted time.

Modifying Time=Number of Records of Modified Part×Unit Time toModify  (1)

Adding Time=Number of Records of Additional Part×Unit Time to Add  (2)

Deleting Time=Number of Records of Deleted Part×Unit Time to Delete  (3)

Individual Rewriting Time=Modifying Time+Adding Time+Deleting Time  (4)

Then, the batch rewriting time is compared with the individual rewritingtime (step S13) and, if the batch rewriting time is equal to or lessthan the individual rewriting time, the process proceeds to step S14. Ifthe batch rewriting time is longer than the individual rewriting time,the process proceeds to step S15. In step S14, the operation mode isswitched to the rewrite-all mode, and the step of generating therewrite-all command and sending it to MFP 200 will be executed. On theother hand, in step S15, the operation mode is switched to theindividual rewrite mode, and the step of generating the individualrewrite commands and sending them to MFP 200 will be executed. Theindividual rewrite commands include the individual modify command(s),the individual add command(s), and the individual delete command(s), sothat CPU 101 generates these commands equaling the number of recordsincluded in the modified part, the additional part, and the deletedpart, respectively, and send them to MFP 200 individually in step S15.The step of generating/sending the individual rewrite commands will bedescribed more in detail later.

FIG. 8 is a first flow chart illustrating an exemplary standard dataacquiring procedure which is executed in step S05 of FIG. 7 when thestandard data as shown in FIG. 5 is previously stored in HDD 107. Asshown in FIG. 8, CPU 101 determines the machine type of MFP 200 thatsent the editing data (step S21), and reads the standard data that ispreviously stored in HDD 107 corresponding to the determined machinetype (step S22). As MFP 200 is a “type A MFP” here, the standard datadefined corresponding to the “type A MFP” will be read from the standarddata shown in FIG. 5. Thus, it is possible to switch the operation modeaccurately between the rewrite-all mode and the individual rewrite mode,even if the individual rewriting time and the batch rewriting time aredifferent depending on the machine type of the MFP.

FIG. 9 is a second flow chart illustrating an exemplary standard dataacquiring procedure which is executed in step S05 of FIG. 7, when thestandard data shown in FIG. 6 is previously stored in HDD 107. As shownin FIG. 9, CPU 101 detects the operation mode of MFP 200 (step S31), andthe process branches out depending on the operation mode (step S32). IfMFP 200 is in the stand-by mode, the process proceeds to step S33; ifMFP 200 is during printing, the process proceeds to step S34; and if MFP200 is in the sleep mode, the process proceeds to step S35. In step S33,part of the standard data corresponding to the stand-by mode is readfrom the standard data previously stored in HDD 107. In step S34,another part of the standard data corresponding to the printing mode isread from the standard data previously stored in HDD 107. In step S35,still another part of the standard data corresponding to the sleep modeis read from the standard data previously stored in HDD 107. Again, itis possible to accurately switch the operation mode between therewrite-all mode and the individual rewrite mode, even if the individualrewriting time and the batch rewriting time are different depending onthe operation mode of MFP 200.

FIG. 10 is a third flow chart illustrating an exemplary standard dataacquiring procedure which is executed in step S05 of FIG. 7 when thestandard data is not previously stored in HDD 107. As shown in FIG. 10,CPU 101 sends an individual add command for testing to MFP 200 (stepS41). One record of test data is sent to MFP 200 together with theindividual add command for testing. Then, the timer is started (stepS42). When the individual add command is received, MFP 200 adds the onerecord of test data to the destination data stored in HDD 216. Uponcompletion of adding the test data to the destination data, MFP 200returns a signal indicating completion of the addition to PC 100. On theother hand, PC 100 has entered the stand-by mode until the additioncompleted signal is received (NO at step S43), and when the signal isreceived (YES at step S43), the process proceeds to step S44. In stepS44, the unit time to add is set to a value of the timer.

In the next step S45, CPU 101 sends an individual modify command fortesting to MFP 200. The individual modify command is to modify the testdata that has been added in the previous steps. Then, the timer isstarted (step S46). When the individual modify command is received, MFP200 modifies the test data that has been stored in HDD 216 previously.Upon completion of modifying the test data, MFP 200 returns a signalindicating completion of the modification to PC 100. On the other hand,PC 100 has entered the stand-by mode until it receives the modificationcompleted signal (NO at step S47), and when the signal is received (YESat step S47), the process proceeds to step S48. In step S48, the unittime to modify is set to a value of the timer.

In the next step S49, CPU 101 sends an individual delete command fortesting to MFP 200. The individual delete command is to delete the testdata that has been modified in the previous steps. Then, the timer isstarted (step S50). When the individual delete command is received, MFP200 deletes the test data stored in HDD 216. Upon completion of deletingthe test data, MFP 200 returns a signal indicating completion of thedeletion to PC 100. On the other hand, PC 100 has entered the stand-bymode until it receives the deletion completed signal (NO at step S51),and when the signal is received (YES at step S51), the process proceedsto step S52. In step S52, the unit time to delete is set to a value ofthe timer.

In the next step S53, CPU 100 sends the rewrite-all command for testingto MFP 200. The rewrite-all command is to store new test data other thanthe destination data in HDD 107 of MFP 200. The test data is sent to MFP200 together with the rewrite-all command for testing. The test data mayinclude at least one record of data. Then, the timer is started (stepS54). When the rewrite-all command is received, MFP 200 stores the testdata received with the rewrite-all command in HDD 216. Upon completionof batch rewriting of the test data, MFP 200 returns a signal indicatingcompletion of the batch rewriting to PC 100. On the other hand, PC 100has entered the stand-by mode until the batch rewriting completed signalis received (NO at step S55), and when the signal is received (YES atstep S55), the process proceeds to step S56. In step S56, the batchrewriting time is set to a value of the timer.

FIG. 11 is a flow chart illustrating an exemplary individual rewritecommand generating/sending procedure which is executed in step S15 ofFIG. 7. As shown in FIG. 11, it is determined whether or not themodified part is detected (step S61). If the modified part has beendetected in step S06 of FIG. 7, the process proceeds to step S62,otherwise the process proceeds to step S67. In step S62, a variable I isset to the initial value “1” and the process proceeds to step S63. Thevariable I is a counter to count the number of generated individualmodify commands. In step S63, one record is selected from the records ofthe modified part. Then, the individual modify command to rewrite thedata with the selected record is generated and sent to MFP 200 (stepS64). Namely, one individual modify command corresponding to the onerecord of the modified part is sent to MFP 200. In the next step S65,the variable I is incremented and the process proceeds to step S66. Instep S66, the variable I is compared against the number of records ofthe modified part and, if the variable I is greater than the number ofrecords, the process proceeds to step S67, otherwise the process returnsto step S63. Specifically, CPU 101 sends a particular number ofindividual modify commands equal to the number of records of themodified part to MFP 200, and proceeds the process to step S67.

In step S67, it is determined whether or not the additional part isdetected. If the additional part has been detected in step S08 of FIG.7, the process proceeds to step S68, otherwise the process proceeds tostep S73. In step S68, a variable I is set to the initial value “1” andthe process proceeds to step S69. The variable I is a counter to countthe number of generated individual add commands. In step S69, one recordis selected from the records of the additional part. Then, theindividual add command to rewrite the selected record is generated andsent to MFP 200 (step S70). Namely, one individual add commandcorresponding to the one record of the additional part is sent to MFP200. In the next step S71, the variable I is incremented and the processproceeds to step S72. In step S72, the variable I is compared againstthe number of records of the additional part and, if the variable I isgreater than the number of records, the process proceeds to step S73,otherwise the process returns to step S69. Specifically, CPU 101 sends aparticular number of individual add commands equal to the number ofrecords of the additional part to MFP 200, and proceeds the process tostep S73.

In step S73, it is determined whether or not the deleted part isdetected. If the deleted part has been detected in step S10 of FIG. 7,the process proceeds to step S74, otherwise the process ends. In stepS74, a variable I is set to the initial value “1” and the processproceeds to step S75. The variable I is a counter to count the number ofgenerated individual delete commands. In step S75, one record isselected from the records of the deleted part. In response, theindividual delete command to rewrite the selected record is generatedand sent to MFP 200 (step S76). Thus, one individual add commandcorresponding to the one record of the deleted part is sent to MFP 200.In the next step S77, the variable I is incremented and the processproceeds to step S78. In step S78, the variable I is compared againstthe number of records of the deleted part and, if the variable I isgreater than the number of records, the process ends, otherwise theprocess returns to step S75. Specifically, CPU 101 sends a particularnumber of individual delete commands equal to the number of records ofthe deleted part to MFP 200, and completes the process.

As described above, MFP 200 rewrites the editing data in response to therewrite-all command, and the time to perform the rewriting jobsubstantially remains the same regardless of whether the data amount ofthe editing data is changed. MFP 200 also rewrites the editing data inresponse to the individual rewrite command(s), where the edited part ofthe editing data that differs from the pre-editing version of theediting data is rewritten for each record, so that more time may beneeded to rewrite as more records are included in the edited part. Byselecting, however, either the rewrite-all mode or the individualrewrite mode depending on the number of records included in the editedpart of the data, it is possible to allow MFP 200 to rewrite thedestination data stored in HDD 216 in a short time.

Selecting portion 40 includes modifying time estimating portion 41,adding time estimating portion 42, and deleting time estimating portion43, in order to estimate the individual rewriting time for MFP 200 tocomplete rewriting all records included in the edited part of the data,based on the number of records included in the edited part and the unittime to rewrite one record in response to the individual rewritecommand. Selecting portion 40 compares the estimated individualrewriting time against the batch rewriting time for MFP 200 to rewritethe data with the edited version of the editing data in response to therewrite-all command. Thus, it is possible to accurately estimate theindividual rewrite time corresponding to the number of records includedin the edited part of the data.

Selecting portion 40 also receives the unit time to rewrite and thebatch rewriting time from MFP 200, which further allows the accurateestimation of the individual rewriting time and the batch rewriting timeeven when the machine type of MFP 200 is changed, and allows MFP 200 torewrite the destination data stored in HDD 216 in a short time.

Further, the operation mode of MFP 200 is detected, and the unit time torewrite and the batch rewriting time corresponding to the detectedoperation mode are acquired, which again allows the accurate estimationof the individual rewriting time and the batch rewriting time, even ifthe data rewriting time of MFP 200 is changed depending on the operationmode, and which further allows correct switching of the operation modebetween the batch rewriting mode and the individual rewriting mode.

Further, the individual rewrite command is sent to MFP 200 to measurethe individual rewriting time for MFP 200 to rewrite the test data,while the rewrite-all command is also sent to MFP 200 to measure thebatch rewriting time for MFP 200 to rewrite the test data, which allowsthe accurate estimation of the individual rewriting time and the batchrewriting time, even if the standard data is not stored in PC, nor MFP200, and also allows MFP 200 to rewrite the destination data stored inHDD 216 in a short time.

Again, selecting portion 40 includes the modifying time estimatingportion 41 that estimates the modifying time based on the number ofrecords of the modified part and the unit time to modify; the addingtime estimating portion 42 that estimates the adding time based on thenumber of records of the additional part and the unit time to add; andthe deleting time estimating portion 43 that estimates the deleting timebased on the number of records of the deleted part and the unit time todelete. Thus, the accurate estimation of the individual rewriting timecan be calculated even if MFP 200 has different processing time tomodify, add, or delete the records.

It should be noted that although the printing system 1 has beendescribed in the above embodiment, it is apparent that the presentinvention can be implemented as a method or a program to manage data tocause PC 100 to execute the procedures as illustrated in FIGS. 7-11.

Although the present invention has been described and illustrated indetail, it is clearly understood that the same is by way of illustrationand example only and is not to be taken by way of limitation, the spiritand scope of the present invention being limited only by the terms ofthe appended claims.

1. A data managing device comprising: a data acquiring portion toacquire from an image processing apparatus at least part of data storedtherein as editing data; an editing portion to edit said acquiredediting data; a detecting portion to detect an edited part which isdifferent between a pre-editing version of said editing data and anedited version of said editing data; a selecting portion to selecteither a rewrite-all mode or an individual rewrite mode based on thenumber of records included in said detected edited part; in saidrewrite-all mode, a batch rewriting portion to send a rewrite-allcommand to said image processing apparatus, so as to instruct said imageprocessing apparatus to rewrite said pre-editing version of the editingdata with said edited version of the editing data; and in saidindividual rewriting mode, an individual rewriting portion to send atleast an individual rewrite command to said image processing apparatus,so as to instruct said image processing apparatus to rewrite all recordsincluded in said edited part one by one.
 2. A data managing deviceaccording to claim 1, wherein said selecting portion includes anestimating portion to estimate an individual rewriting time for saidimage processing apparatus to rewrite all records included in saidedited part, based on the number of records included in said detectededited part and a unit time to rewrite for said image processingapparatus to rewrite one record in response to said individual rewritecommand, and a comparing portion to compare said estimated individualrewriting time with a batch rewriting time for said image processingapparatus to rewrite said pre-editing version of the editing data withsaid edited version of the editing data in response to said rewrite-allcommand.
 3. A data managing device according to claim 2, furthercomprising a standard data acquiring portion to receive said unit timeto rewrite and said batch rewriting time from said image processingapparatus.
 4. A data managing device according to claim 2, furthercomprising: an operation mode detecting portion to detect an operationmode of said image processing apparatus; and a standard data acquiringportion to receive said unit time to rewrite and said batch rewritingtime corresponding to said detected operation mode.
 5. A data managingdevice according to claim 2, further comprising: a first measuringportion to measure said unit time to rewrite by sending said individualrewrite command to said image processing apparatus and measuring timefor said image processing apparatus to rewrite test data; and a secondmeasuring portion to measure said batch rewriting time by sending saidrewrite-all command to said image processing apparatus and measuringtime for said image processing apparatus to rewrite test data.
 6. A datamanaging device according to claim 1, wherein said detecting portionincludes a modified part detecting portion to detect modified partmodified from said pre-editing version of the editing data in saidedited version of the editing data, an additional part detecting portionto detect additional part added to said pre-editing version of theediting data in said edited version of the editing data, and a deletedpart detecting portion to detect deleted part deleted from saidpre-editing version of the editing data in said edited version of theediting data, and wherein said individual rewriting portion includes anindividual modify command sending portion to send at least an individualmodify command to order rewriting all records included in said modifiedpart one by one, when said modified part is detected, an individual addcommand sending portion to send at least an individual add command toorder rewriting all records included in said additional part one by one,when said additional part is detected, and an individual delete commandsending portion to send at least an individual delete command to orderrewriting all records included in said deleted part one by one, whensaid deleted part is detected.
 7. A data managing device according toclaim 6, wherein said selecting portion includes a modifying timeestimating portion to estimate modifying time based on the number ofrecords included in said modified part and a unit time to modify forsaid image processing apparatus to modify one record in response to saidindividual modify command, an adding time estimating portion to estimateadding time based on the number of records included in said additionalpart and a unit time to add for said image processing apparatus to addone record of data in response to said individual add command, and adeleting time estimating portion to estimate deleting time based on thenumber of records included in the deleted part and a unit time to deletefor said image processing apparatus to delete one record of data inresponse to said individual delete command.
 8. A data managing deviceaccording to claim 7, further comprising a standard data acquiringportion to receive said unit time to modify, said unit time to add, andsaid unit time to delete from said image processing apparatus.
 9. A datamanaging device according to claim 7, further comprising an operationmode detecting portion to detect an operation mode of said imageprocessing apparatus, and a standard data acquiring portion to acquiresaid unit time to modify, said unit time to add, said unit time todelete, and batch rewriting time, corresponding to said detectedoperation mode.
 10. A data managing device according to claim 7, furthercomprising a unit time to modify measuring portion to measure said unittime to modify by sending said individual modify command to said imageprocessing apparatus and measuring time for said image processingapparatus to modify test data, a unit time to add measuring portion tomeasure said unit time to add by sending said individual add command tosaid image processing apparatus and measuring time for said imageprocessing apparatus to add test data, a unit time to delete measuringportion to measure said unit time to delete by sending said individualdelete command to said image processing apparatus and measuring time forsaid image processing apparatus to delete test data, and a batchrewriting time measuring portion to measure said batch rewriting time bysending said rewrite-all command to said image processing apparatus andmeasuring time for said image processing apparatus to rewrite test data.11. A data managing program embodied on a computer readable medium forcausing a computer to execute processing comprising the steps of:acquiring from an image processing apparatus at least part of datastored therein as editing data; editing said acquired editing data;detecting an edited part which is different between a pre-editingversion of said editing data and an edited version of said editing data;selecting either a rewrite-all mode or an individual rewrite mode basedon the number of records included in said detected edited part; whensaid rewrite-all mode is selected, sending a rewrite-all command to saidimage processing apparatus, so as to instruct said image processingapparatus to rewrite said pre-editing version of the editing data withsaid edited version of the editing data; and when said individualrewriting mode is selected, sending at least an individual rewritecommand to said image processing apparatus, so as to instruct said imageprocessing apparatus to rewrite all records included in said edited partone by one.
 12. A data managing program embodied on a computer readablemedium according to claim 11, wherein said selecting step includesestimating an individual rewriting time for said image processingapparatus to rewrite all records included in said edited part, based onthe number of records included in said detected edited part and a unittime to rewrite for said image processing apparatus to rewrite onerecord in response to said individual rewrite command, and comparingsaid estimated individual rewriting time with a batch rewriting time forsaid image processing apparatus to rewrite said pre-editing version ofthe editing data with said edited version of the editing data inresponse to said rewrite-all command.
 13. A data managing programembodied on a computer readable medium according to claim 12, whereinsaid processing further comprises the step of receiving said unit timeto rewrite and said batch rewriting time from said image processingapparatus.
 14. A data managing program embodied on a computer readablemedium according to claim 12, wherein said processing further comprisesthe steps of detecting an operation mode of said image processingapparatus, and acquiring said unit time to rewrite and said batchrewriting time corresponding to said detected operation mode.
 15. A datamanaging program embodied on a computer readable medium according toclaim 12, wherein said processing further comprises the steps ofmeasuring said unit time to rewrite by sending said individual rewritecommand to said image processing apparatus and measuring time for saidimage processing apparatus to rewrite test data, and measuring saidbatch rewriting time by sending said rewrite-all command to said imageprocessing apparatus and measuring time for said image processingapparatus to rewrite test data.
 16. A data managing program embodied ona computer readable medium according to claim 11, wherein the step ofdetecting said edited part includes steps of detecting a modified partmodified from said pre-editing version of the editing data in saidedited version of the editing data, detecting an additional part addedto said pre-editing version of the editing data in said edited versionof the editing data, and detecting a deleted part deleted from saidpre-editing version of the editing data in said edited version of theediting data, and wherein the step of sending said individual rewritecommand includes steps of sending at least an individual modify commandto order rewriting all records included in said modified part one byone, when said modified part is detected, sending at least an individualadd command to order rewriting all records included in additional partone by one, when said additional part is detected, and sending at leastan individual delete command to order rewriting all records included indeleted part one by one, when said deleted part is detected.
 17. A datamanaging program embodied on a computer readable medium according toclaim 16, wherein the step of selecting includes steps of estimatingmodifying time based on the number of records included in said modifiedpart and a unit time to modify for said image processing apparatus tomodify one record of data in response to said individual modify command,estimating adding time based on the number of records included in saidadditional part and a unit time to add for said image processingapparatus to add one record of data in response to said individual addcommand, and estimating deleting time based on the number of recordsincluded in the deleted part and a unit time to delete for said imageprocessing apparatus to delete one record of data in response to saidindividual delete command.
 18. A data managing program embodied on acomputer readable medium according to claim 17, further comprising thestep of receiving said unit time to modify, said unit time to add, andsaid unit time to delete from said image processing apparatus.
 19. Adata managing program embodied on a computer readable medium accordingto claim 17, wherein said processing further comprises the steps ofdetecting an operation mode of said image processing apparatus, andacquiring said unit time to modify, said unit time to add, said unittime to delete, and batch rewriting time, corresponding to said detectedoperation mode.
 20. A data managing program embodied on a computerreadable medium according to claim 17, wherein said processing furthercomprises the steps of measuring said unit time to modify by sendingsaid individual modify command to said image processing apparatus, andmeasuring time for said image processing apparatus to modify test data,measuring said unit time to add by sending said individual add commandto said image processing apparatus, and measuring time for said imageprocessing apparatus to add test data, measuring said unit time todelete by sending said individual delete command to said imageprocessing apparatus, and measuring time for said image processingapparatus to delete test data, and measuring said batch rewriting timeby sending said rewrite-all command to said image processing apparatus,and measuring time for said image processing apparatus to rewrite testdata.
 21. A data managing method executed by a computer connected to animage processing apparatus via a network, to manage data stored in saidimage processing apparatus, comprising the steps of acquiring from saidimage processing apparatus at least part of said data stored therein asediting data; editing said acquired editing data; detecting an editedpart which is different between a pre-editing version of said editingdata and an edited version of said editing data; selecting either arewrite-all mode or an individual rewrite mode based on the number ofrecords included in said detected edited part; when said rewrite-allmode is selected, sending a rewrite-all command to said image processingapparatus, so as to instruct said image processing apparatus to rewritesaid pre-editing version of the editing data with said edited version ofthe editing data; and when said individual rewriting mode is selected,sending at least an individual rewrite command to said image processingapparatus, so as to instruct said image processing apparatus to rewriteall records included in said edited part one by one.